home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / mflms101.arc / MFLSOUND.H < prev    next >
C/C++ Source or Header  |  1989-11-25  |  4KB  |  156 lines

  1. /************************************************************************/
  2. /*                                                                      */
  3. /*  MFLSOUND Header file                                                */
  4. /*                                                                      */
  5. /*  Defines and prototypes for sound functions.                         */
  6. /*                                                                      */
  7. /*  Copyright 1988-89 by Robert B. Stout dba MicroFirm                  */
  8. /*  All rights reserved                                                 */
  9. /*                                                                      */
  10. /*  Copyright 1986, 1987 by S.E. Margison                               */
  11. /*                                                                      */
  12. /*  Compiled by QC 2.0 for use with MSC 5.1 or QC 2.0 or later.         */
  13. /*                                                                      */
  14. /************************************************************************/
  15.  
  16. #ifndef MFLSOUND_H
  17. #define MFLSOUND_H
  18.  
  19. /* defines for mktone() update parameter: */
  20.  
  21. #define ON 0          /* turn the speaker on */
  22. #define UPDATE 1      /* sound is on, just change freq */
  23. #define TOGGLE 2      /* for delay use, turn on, then off */
  24.  
  25. /* port equates */
  26.  
  27. #define SCNTRL 97     /* sound control port */
  28. #define SOUNDON 0x03  /* bit mask to enable speaker */
  29. #define SOUNDOFF 0xfc /* bit mask to disable speaker */
  30. #define C8253 67      /* port address to control 8253 */
  31. #define SETIMER 182   /* tell 8253 to expect freq data next */
  32. #define F8253 66      /* frequency address on 8253 */
  33.  
  34. /* frequency equates (muscical scale) */
  35. /* digit in label is octave number, S indicates Sharp (#) */
  36.  
  37. #define C0      36489
  38. #define CS0     34445
  39. #define D0      32512
  40. #define DS0     30673
  41. #define E0      28961
  42. #define F0      27329
  43. #define FS0     25804
  44. #define G0      24351
  45. #define GS0     22981
  46. #define A0      21694
  47. #define AS0     20473
  48. #define B0      19326
  49.  
  50. #define C1      18244
  51. #define CS1     17218
  52. #define D1      16251
  53. #define DS1     15340
  54. #define E1      14480
  55. #define F1      13668
  56. #define FS1     12899
  57. #define G1      12175
  58. #define GS1     11493
  59. #define A1      10847
  60. #define AS1     10238
  61. #define B1      9663
  62.  
  63. #define C2      9121
  64. #define CS2     8609
  65. #define D2      8126
  66. #define DS2     7670
  67. #define E2      7239
  68. #define F2      6833
  69. #define FS2     6450
  70. #define G2      6088
  71. #define GS2     5746
  72. #define A2      5424
  73. #define AS2     5119
  74. #define B2      4832
  75.  
  76. #define C3      4561
  77. #define CS3     4305
  78. #define D3      4063
  79. #define DS3     3835
  80. #define E3      3620
  81. #define F3      3417
  82. #define FS3     3225
  83. #define G3      3044
  84. #define GS3     2873
  85. #define A3      2712
  86. #define AS3     2560
  87. #define B3      2416
  88.  
  89. #define C4      2280
  90. #define CS4     2152
  91. #define D4      2032
  92. #define DS4     1917
  93. #define E4      1810
  94. #define F4      1708
  95. #define FS4     1612
  96. #define G4      1522
  97. #define GS4     1437
  98. #define A4      1356
  99. #define AS4     1280
  100. #define B4      1210
  101.  
  102. #define C5      1140
  103. #define CS5     1076
  104. #define D5      1016
  105. #define DS5     959
  106. #define E5      905
  107. #define F5      854
  108. #define FS5     806
  109. #define G5      761
  110. #define GS5     718
  111. #define A5      678
  112. #define AS5     640
  113. #define B5      604
  114.  
  115. #define C6      570
  116. #define CS6     538
  117. #define D6      508
  118. #define DS6     479
  119. #define E6      449
  120. #define F6      427
  121. #define FS6     403
  122. #define G6      380
  123. #define GS6     359
  124. #define A6      339
  125. #define AS6     320
  126. #define B6      302
  127.  
  128. #define C7      285
  129. #define CS7     269
  130. #define D7      254
  131. #define DS7     240
  132. #define E7      226
  133. #define F7      214
  134. #define FS7     202
  135. #define G7      190
  136. #define GS7     180
  137. #define A7      169
  138. #define AS7     160
  139. #define B7      151
  140.  
  141. #define C8      143
  142.  
  143. #ifndef _Cdecl_
  144.  #ifdef NO_EXT_KEYS
  145.   #define _Cdecl_
  146.  #else
  147.   #define _Cdecl_ cdecl
  148.  #endif
  149. #endif
  150.  
  151. void    _Cdecl_ mktone(int, int, int),
  152.         _Cdecl_ soundon(void),
  153.         _Cdecl_ soundoff(void);
  154.  
  155. #endif /* MFLSOUND_H */
  156.